package com.thinkgem.jeesite.modules.sys.entity;

import com.thinkgem.jeesite.common.persistence.MyBaseEntity;
import com.thinkgem.jeesite.common.utils.excel.annotation.ExcelField;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

public class TbOrder extends MyBaseEntity<TbOrder> {
    private Integer id;
    private String orderStateStr;
    private String sourceSystemId;

    private String sourceBusinessId;

    private String orderNo;

    private String outTradeNo;

    private String uid;
    private String address;
    private String userName; //下单用户名
    @ExcelField(title="店铺名称",align=2, sort=1)
    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    private Integer platFormType;

    private Integer channelId;


    private String contactName;

    private String contactMobile;

    private BigDecimal orderAmount;

    private Date orderTime;

    private Byte orderState;

    private Byte payState;

    private Byte payId;

    private Integer mchId;

    private Integer addressId;

    private String payName;

    private BigDecimal payAmount;

    private Date payTime;

    private String payNote;

    private BigDecimal refundAmount;

    private BigDecimal refundIngAmount;

    private Byte refundState;

    private String refundReason;

    private String orderSubject;

    private String exceptionRefundNotify;

    private String orderDescribe;

    private String refundNotifyUrl;

    private String closeNotifyUrl;

    private String notifyUrl;

    private String orderUrl;

    private String showUrl;

    private String service;

    private String beneficiaryName;

    private Integer shopId;

    private Date createTime;

    private Date updateTime;

    private Byte isDelete;

    private String extraParam;

    private String bshowName;   //单元号
    private String logisticsNumber;   //单元号
    private String logisticsCode;//物流公司编号

    private String productType;//商品类型

    public String getLogisticsCode() {
        return logisticsCode;
    }

    public void setLogisticsCode(String logisticsCode) {
        this.logisticsCode = logisticsCode;
    }

    private Date bcreateTime;    //物业费缴费时间

    private Date beginDate;		// 开始日期
    private Date endDate;		// 结束日期

    private String agentName;    // 姓名
    private Byte delivery;  //派送状态
    private BigDecimal packageFee;

    private String startTime;
    private String endTime;
    //订单中的订单商品集合
    private List<TbOrderProduct> productList;

    public List<TbOrderProduct> getProductList() {
        return productList;
    }

    public void setProductList(List<TbOrderProduct> productList) {
        this.productList = productList;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getProductType() {
        return productType;
    }

    public void setProductType(String productType) {
        this.productType = productType;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public BigDecimal getPackageFee() {
        return packageFee;
    }

    public void setPackageFee(BigDecimal packageFee) {
        this.packageFee = packageFee;
    }

    public Byte getDelivery() {
        return delivery;
    }

    public void setDelivery(Byte delivery) {
        this.delivery = delivery;
    }

    public String getAgentName() {
        return agentName;
    }

    public void setAgentName(String agentName) {
        this.agentName = agentName;
    }

    public String getOrderStateStr() {
        return orderStateStr;
    }

    public void setOrderStateStr(String orderStateStr) {
        this.orderStateStr = orderStateStr;
    }

    public Date getBeginDate() {
        return beginDate;
    }

    public void setBeginDate(Date beginDate) {
        this.beginDate = beginDate;
    }

    public Date getEndDate() {
        return endDate;
    }

    public void setEndDate(Date endDate) {
        this.endDate = endDate;
    }

    public void setBshowName(String bshowName){
        this.bshowName=bshowName;
    }
    public String getBshowName(){
        return this.bshowName;
    }
    public void setBcreateTime(Date bcreateTime) {
        this.bcreateTime = bcreateTime;
    }
    public Date getBcreateTime(){
        return  this.bcreateTime;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getSourceSystemId() {
        return sourceSystemId;
    }

    public void setSourceSystemId(String sourceSystemId) {
        this.sourceSystemId = sourceSystemId == null ? null : sourceSystemId.trim();
    }

    @Override
    public void preInsert() {

    }

    @Override
    public void preUpdate() {

    }
    public String getSourceBusinessId() {
        return sourceBusinessId;
    }

    public void setSourceBusinessId(String sourceBusinessId) {
        this.sourceBusinessId = sourceBusinessId == null ? null : sourceBusinessId.trim();
    }

    public Integer getAddressId() {
        return addressId;
    }

    public void setAddressId(Integer addressId) {
        this.addressId = addressId;
    }
    @ExcelField(title="订单号",align=2, sort=2)
    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo == null ? null : orderNo.trim();
    }

    public String getOutTradeNo() {
        return outTradeNo;
    }

    public void setOutTradeNo(String outTradeNo) {
        this.outTradeNo = outTradeNo == null ? null : outTradeNo.trim();
    }

    public String getUid() {
        return uid;
    }

    public void setUid(String uid) {
        this.uid = uid;
    }

    public String getLogisticsNumber() {
        return logisticsNumber;
    }

    public void setLogisticsNumber(String logisticsNumber) {
        this.logisticsNumber = logisticsNumber;
    }

    public Integer getPlatFormType() {
        return platFormType;
    }

    public void setPlatFormType(Integer platFormType) {
        this.platFormType = platFormType;
    }

    public Integer getChannelId() {
        return channelId;
    }

    public void setChannelId(Integer channelId) {
        this.channelId = channelId;
    }
    @ExcelField(title="联系人",align=2, sort=6)
    public String getContactName() {
        return contactName;
    }

    public void setContactName(String contactName) {
        this.contactName = contactName == null ? null : contactName.trim();
    }
    @ExcelField(title="联系电话",align=2, sort=7)
    public String getContactMobile() {
        return contactMobile;
    }

    public void setContactMobile(String contactMobile) {
        this.contactMobile = contactMobile == null ? null : contactMobile.trim();
    }
    @ExcelField(title="订单总额",align=2, sort=5)
    public BigDecimal getOrderAmount() {
        return orderAmount;
    }

    public void setOrderAmount(BigDecimal orderAmount) {
        this.orderAmount = orderAmount;
    }

    public Date getOrderTime() {
        return orderTime;
    }

    public void setOrderTime(Date orderTime) {
        this.orderTime = orderTime;
    }

    public Byte getOrderState() {
        return orderState;
    }

    public void setOrderState(Byte orderState) {
        this.orderState = orderState;
    }

    public Byte getPayState() {
        return payState;
    }

    public void setPayState(Byte payState) {
        this.payState = payState;
    }

    public Byte getPayId() {
        return payId;
    }

    public void setPayId(Byte payId) {
        this.payId = payId;
    }

    public Integer getMchId() {
        return mchId;
    }

    public void setMchId(Integer mchId) {
        this.mchId = mchId;
    }
    @ExcelField(title="订单状态",align=2, sort=3)
    public String getPayName() {
        return payName;
    }

    public void setPayName(String payName) {
        this.payName = payName == null ? null : payName.trim();
    }

    public BigDecimal getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(BigDecimal payAmount) {
        this.payAmount = payAmount;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public String getPayNote() {
        return payNote;
    }

    public void setPayNote(String payNote) {
        this.payNote = payNote == null ? null : payNote.trim();
    }

    public BigDecimal getRefundAmount() {
        return refundAmount;
    }

    public void setRefundAmount(BigDecimal refundAmount) {
        this.refundAmount = refundAmount;
    }

    public BigDecimal getRefundIngAmount() {
        return refundIngAmount;
    }

    public void setRefundIngAmount(BigDecimal refundIngAmount) {
        this.refundIngAmount = refundIngAmount;
    }

    public Byte getRefundState() {
        return refundState;
    }

    public void setRefundState(Byte refundState) {
        this.refundState = refundState;
    }

    public String getRefundReason() {
        return refundReason;
    }

    public void setRefundReason(String refundReason) {
        this.refundReason = refundReason == null ? null : refundReason.trim();
    }

    public String getOrderSubject() {
        return orderSubject;
    }

    public void setOrderSubject(String orderSubject) {
        this.orderSubject = orderSubject == null ? null : orderSubject.trim();
    }

    public String getExceptionRefundNotify() {
        return exceptionRefundNotify;
    }

    public void setExceptionRefundNotify(String exceptionRefundNotify) {
        this.exceptionRefundNotify = exceptionRefundNotify == null ? null : exceptionRefundNotify.trim();
    }
    @ExcelField(title="备注",align=2, sort=7)
    public String getOrderDescribe() {
        return orderDescribe;
    }

    public void setOrderDescribe(String orderDescribe) {
        this.orderDescribe = orderDescribe == null ? null : orderDescribe.trim();
    }

    public String getRefundNotifyUrl() {
        return refundNotifyUrl;
    }

    public void setRefundNotifyUrl(String refundNotifyUrl) {
        this.refundNotifyUrl = refundNotifyUrl == null ? null : refundNotifyUrl.trim();
    }

    public String getCloseNotifyUrl() {
        return closeNotifyUrl;
    }

    public void setCloseNotifyUrl(String closeNotifyUrl) {
        this.closeNotifyUrl = closeNotifyUrl == null ? null : closeNotifyUrl.trim();
    }

    public String getNotifyUrl() {
        return notifyUrl;
    }

    public void setNotifyUrl(String notifyUrl) {
        this.notifyUrl = notifyUrl == null ? null : notifyUrl.trim();
    }

    public String getOrderUrl() {
        return orderUrl;
    }

    public void setOrderUrl(String orderUrl) {
        this.orderUrl = orderUrl == null ? null : orderUrl.trim();
    }

    public String getShowUrl() {
        return showUrl;
    }

    public void setShowUrl(String showUrl) {
        this.showUrl = showUrl == null ? null : showUrl.trim();
    }

    public String getService() {
        return service;
    }

    public void setService(String service) {
        this.service = service == null ? null : service.trim();
    }

    public String getBeneficiaryName() {
        return beneficiaryName;
    }

    public void setBeneficiaryName(String beneficiaryName) {
        this.beneficiaryName = beneficiaryName == null ? null : beneficiaryName.trim();
    }
    @ExcelField(title="订单时间",align=2, sort=4)
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Byte getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Byte isDelete) {
        this.isDelete = isDelete;
    }

    public String getExtraParam() {
        return extraParam;
    }

    public void setExtraParam(String extraParam) {
        this.extraParam = extraParam == null ? null : extraParam.trim();
    }

    public Integer getShopId() {
        return shopId;
    }

    public void setShopId(Integer shopId) {
        this.shopId = shopId;
    }
}